Why


The ADAS/AD challenge
Learn about the challenges of developing safe ADAS/AD vehicle functions


The AD Cycle - How it works
Learn about the AD Cycle works for efficient ADAS/AD development


Benefits of ETAS Deterministic Middleware Solution
See why the worlds top automotive OEMs choose us

Solution concepts


System representation concepts
Fundamental concepts to construct ADAS / AD systems


YAAA Modeling Concepts and Workflow
YAML-based concepts and workflows to model ADAS / AD systems


Deterministic Recompute and Virtual Drives
The 🔑 to development efficiency


Scheduling Mechanisms in ETAS DMS
Achieving optimal compromises between latency and predictability

Basics


Determinism
Gain deeper understanding on determinism in embedded real-time systems


Differences of μC and μP-based embedded systems
Why achieving deterministic behavior μP-based embedded systems is a challenge


Glossary
Understand the terms and abbreviations used in ETAS Deterministic Middleware Solution

Products


ETAS DMS Software Development Kit
Design, develop, build, debug and test ADAS/AD applications

ETAS DMS Middleware & Runtime Libraries
Safety-certified middleware and runtime libraries for series production

For whom


Software Architects
Architecture-as-code. Git-based collaboration. Auto-generated graphics.


Feature Developers
Reduced development complexity. Fast debugging with real vehicle data.

Services


Trainings
Get up to speed on developing with ETAS Deterministic Middleware Solution through our expert trainings


Consultancy
Want to know how to best make use of ETAS Deterministic Middleware Solution for your ADAS/AD platform or project?


Proof of Concept (PoC)
See one of your ADAS/AD vehicle functions developed with ETAS Deterministic Middleware Solution


Custom Project
Have a special need or require an extension to ETAS Deterministic Middleware Solution?

Support


FAQs
Get answers to frequently asked questions about ETAS Deterministic Middleware Solution


Contact
Get in touch with an expert to obtain support

Infos and news about ETAS Deterministic Middleware Solution


Blog
Get the latest news about ETAS Deterministic Middleware Solution


Newsletter
Get the latest news about ETAS Deterministic Middleware Solution delivered to your email inbox


Whitepapers
Read in-depth information, analysis, and insights from our experts

Scheduling Mechanisms in ETAS DMS

Achieving optimal compromises between latency and predictability

What is scheduling?

In the context of automotive embedded real-time software, scheduling refers to the process of determining the order and timing of tasks or processes that need to be executed by the embedded system. Automotive embedded systems often have stringent real-time requirements where tasks must be completed within specific deadlines to ensure the proper functioning of the vehicle.

Why scheduling is crucial

Scheduling in automotive embedded real-time software is crucial for ensuring safety, reliability, and predictability of the system. It helps in meeting the timing constraints imposed by various automotive applications such as engine control, braking systems, transmission control, and advanced driver assistance systems (ADAS). Proper scheduling techniques are essential to ensure that critical tasks are executed within their deadlines and that the system operates reliably under all operating conditions.

Data-driven scheduling

Data-driven scheduling is an approach where decisions about task execution are made based on data and runtime information rather than relying solely on pre-defined priorities or fixed schedules.

Benefits
  • Low latency
  • Natural fit for the use case
Drawbacks
  • Predictability
  • Validation

Time-driven scheduling

Time-driven scheduling is a scheduling approach where tasks are executed based on a predefined schedule, often determined before runtime. In time-driven scheduling, tasks are assigned specific time slots or intervals during which they are expected to execute.

Benefits
  • Predictability
  • Safety approved
Drawbacks
  • Latency
  • Hardware costs vs. utilization

Typical architecture of ADAS / AD functions

  • A multitude of sensors (e.g., cameras, radars, lidar, ultrasonic sensors) generate a high load of measurement data.
  • The sensor data is processed, detecting and extracting objects and transferring data to coordinate system. This requires the use of system-on-chips (SoCs) with micro-processors (uP) and hardware accelerators (HWA).
  • In a next step, the pre-processed sensor data is fused (sensor fusion) to form a holistic picture of the surrounding world. Based on this, driving scenarios are calculated (planner).
  • Finally, the calculated driving actions are synchronized before the actuators are activated. This often requires a micro-processor based controller.


Choosing the best scheduling mechanism

Due to the conceptual architecture of ADAS / AD systems, different subsystems have different requirements towards their scheduling:

  • Perception including feature extraction is sensor-driven. For such tasks, event-driven scheduling is best suited as this provides low latency and best fits to this use-case.
  • Sensor data fusion and planning are actuator-driven. For such tasks, time-triggered activation is best suited to ensure high predictability of timely actuation which is essential for safety of the intended function.

Scheduling in ETAS DMS-based systems

To cater for the scheduling needs of ADAS / AD systems, ETAS DMS supports both time- or data-driven activities.

Concepts to ensure data consistency

To ensure data consistency, ETAS DMS implements the following concentps:

  • Input data frozen on Activity start: The input data for an activity is fixed and remains unchanged once the activity has started.
  • Output data delayed to Activity end: The output data generated by an activity is retained and not exposed until the activity is completed.
  • All or no data from one Activity visible for another one: The visibility of data between activities follows an all-or-nothing approach, meaning that either all the data from one activity is accessible to another or none of it is.
  • Deferring activation if an activity is running (no parallel execution): The activation of activities is deferred if another activity is currently running, ensuring that activities do not execute in parallel.

Properties of ETAS DMS-based systems

ETAS DMS-based systems provide an optimal compromise between latency and predictability

  • Much fewer system states than pure data-driven: The system in the ETAS DMS mix has significantly fewer possible states compared to a system that is purely data-driven.
  • Much lower latency than pure time-driven: The latency in the ETAS DMS mix is much lower compared to a system that is solely time-driven.

Determinism in ETAS DMS-based systems

Due to scheduling and computation jitters, the system of activities is not fully time-deterministic: The presence of scheduling and computation jitters introduces non time-deterministic behavior in the system of activities.

However, the system exhibits reproducible behavior for:

  • Software-Lockstep (on-the-fly): The system can achieve synchronized, lockstep execution of activities in software (software-Lockstep) in real-time.
  • Identical re-compute: The system can reproduce identical results through re-computation, ensuring consistency in development-related scenarios (e.g., problem analysis / debugging using forensic recompute or validation).

Read more about Deterministic Recompute and Virtual Drives and how they can accelerate your development